/*
 * Copyright 2008 the original author or authors.
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *      http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */

package com.db4o.groovy;

import com.db4o.ObjectContainer;

/**
 * Basic interface for sb4o script support.
 * @author klevgert
 */
public interface Db4oScriptShell {

  /** Runs a script that is set before by setScript() */
  Object run();

  /** Gets the db4o object container to execute the script on */
  ObjectContainer getObjectContainer();

  /** Sets the db4o object container to execute the script on */
  void setObjectContainer(ObjectContainer objectContainer);

  /** Gets the script to run */
  String getScript();

  /** Sets the script to run */
  void setScript(String script);

}
